var app = getApp();
var util = require('../../utils/util.js');
var api = require('../../config/api.js');

Page({
  data: {
    orderId:0,
    actualPrice:0.00,
    selectPayment:true
  },
  onLoad: function (options) {
    // 页面初始化 options为页面跳转所带来的参数
    this.setData({
      orderId: options.orderId,
      actualPrice: options.actualPrice
    })
  },
  paymentMethod: function () {
    this.setData({
      selectPayment: !this.data.selectPayment
    })
  },
  onReady: function () {

  },
  onShow: function () {
    // 页面显示

  },
  onHide: function () {
    // 页面隐藏

  },
  onUnload: function () {
    // 页面关闭
  },
  //向服务请求支付参数
  requestPayParam() {
    let that = this;
    if (that.data.selectPayment == true){
      util.request(api.PayPrepayId, {orderId: that.data.orderId}).then(function (res) {
        if (res.errno === 0) {
          let payParam = res.data;
          wx.requestPayment({
            'timeStamp': payParam.timeStamp,
            'nonceStr': payParam.timeStamp,
            'package': payParam.nonceStr,
            'signType': payParam.signType,
            'paySign': payParam.paySign,
            'success': function(res){
              console.log(res);
              wx.redirectTo({
                url: '/pages/payResult/payResult?status=true',
              })
            },
            'fail': function (res){
              console.log(res);
              wx.navigateTo({
                url: '/pages/payResult/payResult?status=0&orderId=' + that.data.orderId
              });
            }
          })
        }else{
          wx.navigateTo({
            url: '/pages/payResult/payResult?status=0&orderId=' + that.data.orderId
          });
        }
      });
    }else{
      util.request(api.PayByAccount, {orderId:that.data.orderId}).then(function (res) {
        if (res.errno === 0) {
          wx.navigateTo({
            url:'/pages/payResult/payResult?status=1&orderId=' + that.data.orderId
          });
        } else {
          util.showErrorToast(res.errmsg);
        }
      });
    }
  },
  startPay(){
    this.requestPayParam();
  }
})